package com.zc.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * @description:
 * @author: cong
 * @create: 2024/8/7
 */
@Configuration
public class CorsConfig implements WebMvcConfigurer {
    /**
     * 配置跨源资源共享（CORS）映射
     * 此方法指定允许的跨源请求的规则，以支持不同域间的请求
     *
     * @param registry 用于注册CORS映射的接口
     */
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        // 允许跨域的路径
        registry.addMapping("/**")
                // 允许跨域请求的域名
                .allowedOriginPatterns("*")
                // 允许跨域的请求方法
                .allowedMethods("GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS")
                // 是否允许cookie
                .allowCredentials(true)
                // 跨域允许时间
                .maxAge(3600)
                // 设置允许的请求头
                .allowedHeaders("*");
    }
}
